package com.cmyshare.design.proxyPattern;

/**
 * @version 1.0
 * @Author cmy
 * @Date 2024/1/31 15:27
 * @desc 代理对象类
 */
public class ProxyObject implements Object {
    /**
     * 引入对象的代理公共接口
     */
    Object obj;

    /**
     * ProxyObject代理对象有参构造
     */
    public ProxyObject() {
        System.out.println("这是代理类");
        obj = new ObjectImpl();
    }

    /**
     * 代理操作行为
     */
    @Override
    public void action() {
        System.out.println("代理开始");
        //执行引入对象的代理公共接口下，代理操作行为
        obj.action();
        System.out.println("代理结束");
    }
}
